﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows.Controls;
using WpfApplication2.UserControls;
using WpfApplication2.SindicatoWebService;
using WpfApplication2.Helpers;

namespace WpfApplication2.ViewModels.Afiliado
{
    public class ConsultarAfiliadoViewModel : ViewModel
    {
        public SindicatoWebService.Service1SoapClient WS;
        public Frame ContainerFrame
        {
            get;
            set;
        }
        public ModalDialog modalDialog
        {
            get;
            set;
        }


        public AfiliadoDTO Afiliado
        {
            get
            {
                return afiliado;
            }
            set
            {
                if (afiliado != value)
                {
                    afiliado = value;
                    RaisePropertyChanged("Afiliado");
                }
            }
        }
        private AfiliadoDTO afiliado;


        public EmpresaDTO Empresa
        {
            get
            {
                return empresa;
            }
            set
            {
                if (empresa != value)
                {
                    empresa = value;
                    RaisePropertyChanged("Empresa");
                }
            }
        }
        private EmpresaDTO empresa;


        public string FechaNacimiento
        {
            get
            {
                return fechaNacimiento;
            }
            set
            {
                if (fechaNacimiento != value)
                {
                    fechaNacimiento = value;
                    RaisePropertyChanged("FechaNacimiento");
                }
            }
        }
        private string fechaNacimiento;


        public string FechaExcepcion
        {
            get
            {
                return fechaExcepcion;
            }
            set
            {
                if (fechaExcepcion != value)
                {
                    fechaExcepcion = value;
                    RaisePropertyChanged("FechaExcepcion");
                }
            }
        }
        private string fechaExcepcion;


        public string Provincia
        {
            get
            {
                return provincia;
            }
            set
            {
                if (provincia != value)
                {
                    provincia = value;
                    RaisePropertyChanged("Provincia");
                }
            }
        }
        private string provincia;

        
        public string Localidad
        {
            get
            {
                return localidad;
            }
            set
            {
                if (localidad != value)
                {
                    localidad = value;
                    RaisePropertyChanged("Localidad");
                }
            }
        }
        private string localidad;


        public string Parentesco
        {
            get
            {
                return parentesco;
            }
            set
            {
                if (parentesco != value)
                {
                    parentesco = value;
                    RaisePropertyChanged("Parentesco");
                }
            }
        }
        private string parentesco;


        public ConsultarAfiliadoViewModel(Frame frame, ModalDialog modal, AfiliadoDTO afiliado)
        {
            WS = new SindicatoWebService.Service1SoapClient();
            Afiliado = afiliado;
            CargarDatos();
        }

        private void CargarDatos()
        {
            FechaNacimiento = FormatHelper.JustTheDate(afiliado.FechaNacimiento);
            FechaExcepcion = FormatHelper.JustTheDate(afiliado.FechaExcepcion);
            Localidad = WS.GetLocalidadById(Convert.ToInt32(Afiliado.Localidad)).Name;
            Provincia = WS.GetProvinciaById(Convert.ToInt32(Afiliado.Provincia)).Name;
            Parentesco = WS.GetParentescoById(Convert.ToInt32(Afiliado.Parentesco)).Name;
            Empresa = WS.GetEmpresaById(Convert.ToInt32(Afiliado.EmpresaId));
        }
    }
}
